package com.matou.commons.constants;


/**
 * 正则校验码
 * @author 14587
 * @date 2021-06-03
 */
public class RegexpConstant {
    /** 手机号正则验证 */
    public static final String PHONE_REGEX = "^1(3|4|5|6|7|8|9)\\d{9}$";
    /** 座机号正则验证 */
    public static final String TEL_REGEX = "^0\\d{2,3}-\\d{7,8}$";
    /** 邮箱正则验证 */
    public static final String EMAIL_REGEX = "^(?=\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$).{1,64}$";
    /** 身份证 */
    public static final String IDCARD_REGEX = "(^\\d{8}(0\\d|10|11|12)([0-2]\\d|30|31)\\d{3}$)|(^\\d{6}(18|19|20)\\d{2}(0[1-9]|10|11|12)([0-2]\\d|30|31)\\d{3}(\\d|X|x)$)";
    /** 日期正则验证 YY-MM-DD */
    public static final String YYMMDD_REGEX = "^((((19|20)\\d{2})-(0?[13-9]|1[012])-(0?[1-9]|[12]\\d|30))|(((19|20)\\d{2})-(0?[13578]|1[02])-31)|(((19|20)\\d{2})-0?2-(0?[1-9]|1\\d|2[0-8]))|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))-0?2-29))$";
    /** 时间正则验证HH:mm:ss */
    public static final String HHMMSS_REGEX = "^([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$";
    /** 时间正则验证YY-MM-DD HH:mm:ss */
    public static final String YYMMDD_HHMMSS_REGEX = "^((((19|20)\\d{2})-(0?[13-9]|1[012])-(0?[1-9]|[12]\\d|30))|(((19|20)\\d{2})-(0?[13578]|1[02])-31)|(((19|20)\\d{2})-0?2-(0?[1-9]|1\\d|2[0-8]))|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))-0?2-29))\\s(([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])$";
    /** 允许为空，用于拼接其它正则 */
    public static final String NULL_OR = "^$|";
    /** 非负数字 */
    public static final String NON_NEGATIVE_NUMBER = "^\\d+(\\.\\d+)?$";

    /** 类别(1.个人2.公共) */
    public static final String TEMPLATE_TYPE = "1|2";
    /** 性别(1.男2.女) */
    public static final String GENDER_TYPE = "1|2";
    /** 就诊类型(1.初诊2.复诊) */
    public static final String MR_STATUS = "1|2";
    /** 药品类型 */
    public static final String DRUG_TYPE = "10|11|12|13|20|21|22|30";
    /** 药品类型（排除中药.20） */
    public static final String DRUG_TYPE_OUT_CM = "10|11|12|13|21|22|30";
    /** 中药类型 */
    public static final String CM_DRUG_TYPE = "21|22";
    /** 出入库业务单药品类型 */
    public static final String S_BUSINESS_DRUG_TYPE_CODE = "10|11|12|13|20|21|22|30";
    /** 出入库业务单类型 */
    public static final String S_BUSINESS_CODE = "1000|2000|3000";
}
